Zooko's triangle
Zooko's triangle is a diagram named after Zooko Wilcox-O'Hearn which sets out the possible tradeoffs for a system for giving names to participants in a network protocol. At the vertices of the triangle are three properties that are generally considered desirable for such names[1]:
- Secure: The quality that there is one, unique and specific entity to which the name maps. For instance, domain names are unique because there is just one party able to prove that they are the owner of each domain name.
- Decentralized: The lack of a centralised authority for determining the meaning of a name. Instead, measures such as a Web of trust are used.
- Human-meaningful: The quality of meaningfulness and memorability to the users of the naming system. Domain names and nicknaming are naming systems that are highly memorable.
Of these three properties, proponents of Zooko's triangle argue that no single kind of name can achieve more than two. So the edges of the triangles represent the three possible choices for a naming scheme:
- Decentralized and human-meaningful: this is true of nicknames people choose for themselves
- Secure and human-meaningful: this is the property that domain names and URLs aim for
- Secure and decentralized: this is a property of OpenPGP key fingerprints
Although no one kind of name can have all three properties, Petname systems demonstrate that one can build a naming system by dynamically translating between different possible kinds of names.
Namecoin and Zooko's triangle properties
Namecoin, a distributed naming system based on Bitcoin technology[2], meets all three qualities in Zooko's triangle. [3]
References
See also
External links
|
|
OS kernels |
|
|
Programming languages |
|
|
Systems using capabilities |
|
|
Filesystems |
|
|
Specialised hardware |
|
|
Concepts |
|
|